package com.aaa.generics.demo05;

/**
 * @author C-Q
 * @version 1.1.0
 * @Description:泛型接口
 * @date 2022/10/25
 */
public class Test01 {
    public static void main(String[] args) {
        Dog<Integer> dog = new Dog<>();
        dog.animal(81);

        Monkey monkey = new Monkey();
//        monkey.animal(18);
        //报错数据类型已指定
        monkey.animal("字符串");
    }
}

/**
 * 定义泛型接口，jdk1.5之后允许
 */
interface Animal<T>{
    public void animal(T t);
}
//第一种实现方法不指明类型
class Dog<T> implements Animal<T>{

    @Override
    public void animal(T t) {
        System.out.println("该类也是泛型");
    }
}
//第二种实现方法指明类型
class Monkey implements Animal<String>{

    @Override
    public void animal(String s) {
        System.out.println("该类不是泛型");
    }
}


